package com.example.syq.demo01;
//参考：https://www.cnblogs.com/coprince/p/8603492.html
import java.util.ArrayList;
import java.util.List;

//什么是泛型？
//泛型，即“参数化类型”。
// 参数，定义方法时有形参，然后调用此方法时传递实参。
// 参数化类型，就是将类型由原来的具体的类型参数化，类似于方法中的变量参数，（将类型作为参数）
// 此时类型也定义成参数形式（可以称之为类型形参），然后在使用或调用时传入具体的类型（类型实参）。
//=====================================================================================
//为什么使用泛型？
//泛型的本质是为了参数化类型（在不创建新的类型的情况下，通过泛型指定的不同类型来控制形参具体限制的类型）。
// 也就是说在泛型使用过程中，操作的数据类型被指定为一个参数，
// 这种参数类型可以用在类、接口和方法中，分别被称为泛型类、泛型接口、泛型方法。

public class demo01 {
    public static void main(String[] args) {
        List arrayList = new ArrayList();
//        List<String> arrayList = new ArrayList();
        arrayList.add("aaaa");//string
        arrayList.add(100);//int

        for(int i = 0; i< arrayList.size();i++){
            String item = (String)arrayList.get(i);//string
            System.out.println("item = " + item);
        }
    }
}
